package com.ht.api.call.func.impl.cdc;

import com.ht.api.bean.AjaxResult;
import com.ht.api.bean.LoginBean;
import com.ht.api.call.func.IFunctionCall;
import com.ht.api.db.exception.HtException;
import com.ht.api.db.remote.ApiUtil;

import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import lombok.extern.slf4j.Slf4j;

/**
 * 通知CDC启动
 * @author asq
 * @createTime 2025年3月10日 10:23:09
 */
@Slf4j
public class NotifyCDCStartFunctionCall implements IFunctionCall{

	@Override
	public String getName() {
		return "通知CDC启动";
	}

	@Override
	public JSONObject execute(LoginBean me, JSONObject param, AjaxResult result) {
		String mainId = param.getStr("main_id");
		if (StrUtil.isBlank(mainId)) {
			throw new HtException("main_id不能为空");
		}
		
		log.info("通知CDC启动,id:{}", mainId);
		ApiUtil.post(String.format("http://localhost:8090/cdc/start/%s", mainId));
		
		return JSONUtil.createObj();
	}
}
